#题目2，使用文件和目录操作，定义一个统计指定目录大小的函数


import os


#定义函数，可用于递归循环

def StatDir(file):

    sum1 = 0 #用于统计各个文件大小之和

    #先判断是 文件 还是 文件夹

    if os.path.isfile(file):
        sum1 += os.path.getsize(file)
    if os.path.isdir(file):

        for i in os.listdir(file):  #遍历file子目录
            file1 = os.path.join(file,i)

            if os.path.isfile(file1):
                sum1 += os.path.getsize(file1)
            if os.path.isdir(file1):    
                sum1 += StatDir(file1)   #递归

    return sum1  #返回总数



#测试用，

while True:
    a1=input("请输入需要统计大小的文件路径（按Enter结束）：")

    if a1=="":
        break;
    elif os.path.isfile(a1) or os.path.isdir(a1):
        print("文件和目录的大小为：",StatDir(a1))
    else:
        print("输入不是文件路径，请重新输入!!!")
        continue
              
    


'''
W:\00_Python\WORK\CBG2         
    
'''
